草庐IT

mysql - 每当我运行 rake db :migrate 时,Rails Schema 都会无意中更改

全部标签

ruby - 为什么我的 RSpec 规范运行了两次?

我在我的Rakefile中定义了以下RSpec(1.3.0)任务:require'spec/rake/spectask'Spec::Rake::SpecTask.new(:spec)do|spec|spec.libs我在spec/spec_helper.rb中有以下内容:require'rubygems'require'spec'require'spec/autorun'require'rack/test'require'webmock/rspec'includeRack::Test::MethodsincludeWebMockrequire'omniauth/core'我在spec/

ruby - 使用 Rails3 和 Ruby 1.9.2 运行 Mongrel 时出现 LoadError

我是编程新手(以前只学过html/css/design),想通过SimplyRails2这本书开始学习RoR。不过,我想从最新版本的Ruby(1.9.2)和Rails(3)所以我被迫在没有这本书的情况下配置所有内容。我通过谷歌和stackoverflow看了很多。当我运行railsserver时,它会自动使用Webrick,但我想使用Mongrel。我通过geminstallmongrel--pre安装了预发布的Mongrel并删除了以前的版本。我读到为了让Mongrel与railsserver一起工作,我不得不将gem'mongrel'添加到Gemfile,但我不知道我应该添加哪一个

ruby-on-rails - 运行 Rails 应用程序时出错 - ExecJS::RuntimeError

我试着用谷歌搜索这个,但我还没有找到我的问题的答案。我正在尝试通过Rails运行一个简单的Controller脚本,但当我到达页面时出现此错误。ExecJS::RuntimeErrorinSay#hello显然Say是Controller,hello是方法。在页面的下方,我获得了有关该错误的更多信息。dyld:unknownrequiredloadcommand0x80000022(in/Users/JoeMoe/Sites/demoRails/app/assets/javascripts/say.js.coffee)我检查了这个文件,里面除了注释代码外什么都没有。这里应该有东西吗?这

ruby - 如何禁用数据库 :schema:dump for migrations

我不希望Rails3在每次迁移时生成我的模式。如何正确禁用它?谢谢 最佳答案 对于仍在寻找在迁移后禁用数据库转储的方法的任何人,rails4中现在可以使用配置,可以像这样将其设置为false:config.active_record.dump_schema_after_migration=false会阻止它。此更改中已添加配置-https://github.com/rails/rails/pull/13948 关于ruby-如何禁用数据库:schema:dumpformigrations

ruby-on-rails - 如何检查将脚本/运行程序作为 shebang 的 ruby​​ 脚本的语法?

我在检查其shebang上有railsscript/runner的ruby​​脚本的语法时遇到问题。这里有两个示例脚本以及它们如何响应ruby​​语法检查:脚本hello_world_runner.rb:#!/usr/bin/envscript/runnerp"Helloworld!"脚本hello_world.rb#!/usr/bin/envrubyp"Helloworld!"这是我尝试检查语法的方法。第一行是命令,第二行是输出。$ruby-chello_world_runner.rb"Helloworld!"$ruby-chello_world.rbSYNTAXOK

ruby-on-rails - 运行 rake 任务时如何跳过 Rails 初始值设定项的加载?

我的Rails应用程序有一个网站爬虫,它加载爬虫在config/initializers中的Rails初始值设定项中使用的身份验证凭据。初始化程序通过调用SiteLogin模型中的模型方法来加载身份验证。当我运行rakedb:migrate来创建SiteLogin模型表时,它失败了,因为初始化程序期望数据库表已经存在。我可以简单地注释掉初始化程序中的代码,运行迁移以创建表,然后取消注释初始化程序代码,而不用担心这个问题。问题是,我正在使用Capistrano进行部署,这意味着我必须先在没有初始化代码的情况下进行部署以运行迁移,然后再使用初始化代码进行部署。有没有更好的方法来做到这一点,

ruby-on-rails - 在 Ubuntu 上将 Sidekiq 作为守护进程运行

如何在Ubuntu上将sidekiq作为守护进程运行?如果我运行bundleexecsidekiq-D我得到invalidoption:-D,有没有办法在没有其他Controller的情况下运行它,比如god,upstart。..? 最佳答案 Daemonizesidekiq有一个选项,只需传递-d选项commit 关于ruby-on-rails-在Ubuntu上将Sidekiq作为守护进程运行,我们在StackOverflow上找到一个类似的问题: http

ruby - Rspec 运行除特定文件夹之外的所有测试

我正在处理的项目有一个相当大的测试套件。我目前正在编写单独运行时通过的测试,但是当我运行整个测试套件$rspec时,我遇到了一些导致测试失败的非常时髦的行为。现在测试是这样嵌套的:spec/folder1/folder2/folder3/test.rb这些命令中的每一个都可以正常运行测试并且一切都通过了:$rspecspec/folder1/folder2/folder3$rspecspec/folder1/folder2$rspecspec/folder1/与folder1处于同一级别的大约10个其他文件夹我不想单独与套件的其余部分一起运行,以确定哪个文件夹包含破坏测试的测试我正在努

ruby-on-rails - 是否可以在 Ruby 2.4 上运行 Rails 4.2 应用程序?

我想在Ruby2.4上试用Rails4.2应用程序。但是,当我尝试这样做时,我收到关于jsongem版本1.8.3安装失败的错误。Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension.currentdirectory:/Users/agrimm/.rbenv/versions/2.4.0-rc1/lib/ruby/gems/2.4.0/gems/json-1.8.3/ext/json/ext/generator/Users/agrimm/.rbenv/versions/2.4.0-rc1/bin/ruby-r./sitec

ruby-on-rails - factory_girl + rspec 似乎不会在每个示例后回滚更改

类似于此处描述的问题:http://rpheath.com/posts/411-how-to-use-factory-girl-with-rspec简而言之(缩短的代码):规范助手:config.use_transactional_fixtures=trueconfig.use_instantiated_fixtures=false工厂.rb:Factory.define:statedof.name"NY"end在我的规范中before(:each)do@static_model=Factory(:state)#withvalidateuniquenessofstatenameend错